package com.itxiao.service.impl;

import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.itxiao.entity.SysDictType;
import com.itxiao.pojo.bo.Page;
import com.itxiao.pojo.vo.PageResult;
import com.itxiao.pojo.vo.R;
import com.itxiao.pojo.vo.SysDictTypeVo;
import com.itxiao.service.SysDictTypeService;
import com.itxiao.dao.SysDictTypeDao;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;
import java.util.List;

/**
 * 字典类型表(SysDictType)表服务实现类
 *
 * @author makejava
 * @since 2025-10-11 16:42:07
 */
@Service
public class SysDictTypeServiceImpl extends ServiceImpl<SysDictTypeDao, SysDictType> implements SysDictTypeService {
    @Resource
    private SysDictTypeDao sysDictTypeDao;
    @Override
    public R queryList(Page page) {
        // 1. 查询总记录数
        int total = sysDictTypeDao.countByPage(page);
        // 2. 查询当前页数据
        List<SysDictTypeVo> list = sysDictTypeDao.queryListByPage(page);
        // 3. 封装分页结果
        PageResult<SysDictTypeVo> result = new PageResult<>(list,total);
        return R.ok(result);
    }

    @Override
    public R add(SysDictType sysDictType) {
        int insert = sysDictTypeDao.insert(sysDictType);
        if (insert  == 0) {
            return R.fail("插入失败");
        }
        return R.ok();
    }

    @Override
    public R updateInfo(SysDictType sysDictType) {
        int insert = sysDictTypeDao.updateById(sysDictType);
        if (insert  == 0) {
            return R.fail("修改失败");
        }
        return R.ok();
    }

    @Override
    public R del(List<Integer> ids) {
        return R.ok(sysDictTypeDao.deleteBatchIds(ids));
    }

    @Override
    public R deleteById(Integer id) {
        return R.ok(sysDictTypeDao.deleteById(id));
    }
}

